Selective user plane monitoring multiple monitoring probes when a serving gateway has multiple ip addresses

ABSTRACT

A system for selective user plane (UP) monitoring includes a service gateway (SGW) having a plurality of units. The system further includes a network packet broker (NPB) configured to receive packets including UP data from tunnels created to enable transmission of the UP packets from UE to the plurality of SGW units. The NPB is also configured to receive packets including control plane (CP) data from channels enabling transmission of the CP packets from a base transceiver station to the SGW. The system also includes a plurality of probes operatively coupled to the NPB. The probes are configured to generate first metrics associated with the received CP packets and to selectively generate second metrics associated with the received UP packets based on one or more identifiers. The NPB is configured to forward UP packets being processed by a particular SGW unit to a particular probe of the plurality of probes.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims priority under 35 U.S.C. § 119 from U.S.Provisional Application No. 62/565,946, entitled “Selective User PlaneMonitoring”, filed on September 2017.

FIELD OF THE INVENTION

The disclosed embodiments generally relate to monitoring network trafficdata, and more particularly, to performing selective user planemonitoring using multiple monitoring probes when a serving gateway hasmultiple IP addresses.

BACKGROUND

As a result of advances in technology and enormous increases in thenumber of wireless device users, the size and complexity of wirelesscommunications networks has greatly increased. One consequence of suchincreases in size and complexity is that the relative increase inoperational and performance problems associated with communicationsnetworks has also increased. Reliability issues, such as dropped calls,lack of coverage, poor audio quality, and application failure often leadto user frustration and to increased costs. As new services areintroduced that use even more complex technology, exercise differentusage modalities, and place additional demands on networks, networkperformance continues to be a prime concern. In fact, quality of serviceoften has a direct impact on a service provider's profitability.Therefore, improving quality of service is a top priority for serviceproviders.

Network monitoring solutions are well known in the art and widelyemployed by service providers. Typical approach to network monitoringincludes placing probes at various points in the network to determine ifnetwork elements are functioning according to specification. Sometimesreferred to as “sniffers”, “log monitors” or “event monitors,” thesemonitoring systems are effective at identifying performance issues witha particular network element, but they often fail to capture problemsthat stem from the interfaces among network elements.

In a practical network monitoring implementation, however, not allpackets that pass through a particular monitoring point are examined indetail, but rather they are sampled (for example, one in every thousanddata packets that flow through a sampling point may be examined indetail). In such a scenario, because the various metrics for any givenflow are now necessarily expressed as estimates with a mean and avariance, taking the maximum of the data counts will result in an upwardor downward bias in the estimated metrics.

The solutions that are currently available can only monitor and diagnosesubsets of the overall telecommunications system in limited ways ratherthan providing a holistic view of network and device performance thatmay be needed to efficiently identify and resolve quality issues.Accordingly, there is a further need in the art for a reliable andflexible network monitoring approach that processes all relevant datafor all subscribers.

SUMMARY

Certain aspects of the present disclosure relate to monitoring networktraffic data.

In accordance with a purpose of the illustrated embodiments, in oneaspect, a system for selective user plane monitoring in a wirelessnetwork includes a service gateway (SGW) having a plurality of units.Each unit has a unique IP address. The system further includes a networkpacket broker configured to receive a plurality of packets includinguser plane data from one or more tunnels created to enable directtransmission of the user plane packets from user equipment to theplurality of SGW units. The network packet broker is also configured toreceive a plurality of packets including control plane data from one ormore channels created to enable transmission of the control planepackets from a base transceiver station to the SGW. The system alsoincludes a plurality of monitoring probes operatively coupled to thenetwork packet broker. The monitoring probes are configured to generatea first plurality of metrics associated with the received control planepackets and configured to selectively generate a second plurality ofmetrics associated with the received user plane packets based on one ormore identifiers. The network packet broker is configured to forward aplurality of user plane packets being processed by a particular SGW unitto a particular monitoring probe of the plurality of probes.

In another aspect, a method for selective user plane monitoring in awireless network includes receiving, by a network packet broker, aplurality of packets including user plane data from one or more tunnelscreated to enable direct transmission of the user plane packets fromuser equipment to a service getaway (SGW) comprising a plurality ofunits. Each of the plurality of SGW units has a unique IP address. Aplurality of packets including control plane data is received by thenetwork packet broker from one or more channels created to enabletransmission of the control plane packets from a base transceiverstation to the plurality of units of the SGW. The received plurality ofuser plane packets and the received plurality of control plane packetsare transmitted by the network packet broker to a plurality ofmonitoring probes operatively coupled to the network packet broker. Eachsubset of user plane packets representing packets being processed by aparticular SGW unit is transmitted to a particular monitoring probe ofthe plurality of probes. A first plurality of metrics associated withthe received control plane packets is generated by the plurality ofmonitoring probes. A second plurality of metrics associated with thereceived user plane packets is selectively generated by the plurality ofmonitoring probes based on one or more identifiers.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure will become more fully understood from thedetailed description and the accompanying drawings. These accompanyingdrawings illustrate one or more embodiments of the present disclosureand, together with the written description, serve to explain theprinciples of the present disclosure. Wherever possible, the samereference numbers are used throughout the drawings to refer to the sameor like elements of an embodiment.

FIG. 1 is a diagram illustrating elements or components of an exampleoperating environment in which embodiments of the present invention maybe implemented.

FIG. 2 is a diagram illustrating selective user plane monitoring using asingle monitoring probe when a serving gateway has a single IP address,according to an embodiment of the present invention.

FIG. 3 is a diagram illustrating selective user plane monitoring usingmultiple monitoring probes when a serving gateway has multiple IPaddresses, according to yet another embodiment of the present invention.

FIG. 4 is a flowchart illustrating steps performed by the monitoringprobe, according to an embodiment of the present invention.

DESCRIPTION OF CERTAIN EMBODIMENTS

The illustrated embodiments are not limited in any way to what isillustrated as the illustrated embodiments described below are merelyexemplary, which can be embodied in various forms, as appreciated by oneskilled in the art. Therefore, it is to be understood that anystructural and functional details disclosed herein are not to beinterpreted as limiting, but merely as a basis for the claims and as arepresentation for teaching one skilled in the art to variously employthe discussed embodiments. Furthermore, the terms and phrases usedherein are not intended to be limiting but rather to provide anunderstandable description of the illustrated embodiments.

Unless defined otherwise, all technical and scientific terms used hereinhave the same meaning as commonly understood by one of ordinary skill inthe art to which this invention belongs. Although any methods andmaterials similar or equivalent to those described herein can also beused in the practice or testing of the illustrated embodiments,exemplary methods and materials are now described.

It must be noted that as used herein and in the appended claims, thesingular forms “a”, “an,” and “the” include plural referents unless thecontext clearly dictates otherwise. Thus, for example, reference to “astimulus” includes a plurality of such stimuli and reference to “thesignal” includes reference to one or more signals and equivalentsthereof known to those skilled in the art, and so forth.

It is to be appreciated the illustrated embodiments discussed below arepreferably a software algorithm, program or code residing on computeruseable medium having control logic for enabling execution on a machinehaving a computer processor. The machine typically includes memorystorage configured to provide output from execution of the computeralgorithm or program.

As used herein, the term “software” is meant to be synonymous with anycode or program that can be in a processor of a host computer,regardless of whether the implementation is in hardware, firmware or asa software computer product available on a disc, a memory storagedevice, or for download from a remote machine. The embodiments describedherein include such software to implement the equations, relationshipsand algorithms described above. One skilled in the art will appreciatefurther features and advantages of the illustrated embodiments based onthe above-described embodiments. Accordingly, the illustratedembodiments are not to be limited by what has been particularly shownand described, except as indicated by the appended claims.

In exemplary embodiments, a computer system component may constitute a“module” that is configured and operates to perform certain operationsas described herein below. Accordingly, the term “module” should beunderstood to encompass a tangible entity, be that an entity that isphysically constructed, permanently configured (e.g., hardwired) ortemporarily configured (e.g. programmed) to operate in a certain mannerand to perform certain operations described herein.

In the context of the present description, the terms “network” and“communication network” refer to the hardware and software connectingone or more communication elements including wireline networks, wirelessnetworks, and/or combinations thereof.

FIG. 1 is a diagram illustrating elements or components of an exampleoperating environment in which embodiments of the present invention maybe implemented. It is noted that the access network of FIG. 1 is merelyone example of a possible access network, and embodiments may beimplemented in any of various access networks, as desired.

As shown, the exemplary wireless network 100 includes one or moreeNodeBs 104 which communicate over a transmission medium (LTE Uuinterface) with one or more user devices 102. User devices may bereferred to herein as “user equipment” (UE). Thus, the user devices 102are referred to as UEs or UE devices. UE devices 102 may comprise any ofvarious types of computer systems or devices which are mobile orportable and which perform wireless communications. Examples of UEdevices include mobile telephones or smart phones (e.g., iPhone™,Android™-based phones), portable gaming devices (e.g., Nintendo DS™,Play Station Portable™, Gameboy Advance™, iPhone™), laptops, PDAs,portable Internet devices, music players, data storage devices, otherhandheld devices, as well as wearable devices such as wrist-watches,headphones, pendants, earpieces, etc. In general, the term “UE” or “UEdevice” can be broadly defined to encompass any electronic, computing,and/or telecommunications device (or combination of devices) which iseasily transported by a user and capable of wireless communication.

In addition to one or more eNodeBs 104, the access network 100 mayinclude a mobility management entity (MME) 106 and a serving gateway(SGW) 108, among other components. While FIG. 1 depicts a couple ofeNodeBs 104 and a single MME 106 and SGW 108, in other implementations,FIG. 1 may include more than two eNodeBs 104, as well as multiple MMEs106, SGWs 108, etc.

eNodeBs 104 may include one or more devices (e.g., base stations) andother components and functionality that allow UE 102 to wirelesslyconnect to access network 100. eNodeBs 104 may include or be associatedwith one or more cells. For example, each cell may include a radiofrequency (RF) transceiver facing a particular direction. eNodeBs 104may interface with access network 100 via an interface referred to as anS1 interface, which may be split into a control plane S1-MME interface110 and a data plane S1-U interface 114. S1-MME interface 110 mayinterface with MME device 106. S1-MME interface 110 may be implemented,for example, with a protocol stack that includes a Network Access Server(NAS) protocol and/or Stream Control Transmission Protocol (SCTP). AnS1-U interface 114 may interface with SGW 108 and may be implemented,for example, using a General Packet Radio Service Tunneling Protocolversion 2 (GTPv2).

MME 106 may implement control plane processing for access network 100.For example, MME 106 may implement tracking and paging procedures for UE102, may activate and deactivate bearers for UE 102, may authenticate auser of UE 102, and may interface to non-LTE radio access networks. Abearer may represent a logical channel with particular quality ofservice (QoS) requirements. MME 106 may also select a particular SGW 108for a particular UE 102. A particular MME 106 may interface with otherMMEs in access network 100 and may send and receive informationassociated with UEs 102, which may allow one MME device to take overcontrol plane processing of UEs serviced by another MME, if the otherMME becomes unavailable.

SGW 108 routes and forwards user data packets. SGW 108 acts as themobility anchor for the user plane during inter-eNodeB 104 handovers. Asnoted above, SGW 108 and eNodeBs 104 communicate over one or more LTES1-U links 114 a-114 c. SGW 108 and MME 106 communicate over an LTE S11link 112.

In general, SGW 108 may be implemented by a single server, multipledistributed servers, and multiple clustered servers. Optionally, some ofthe SGW server functions may be provided by a separate server orservers. In the configuration shown in FIG. 1, a blade server isemployed to implement SGW 108. The blade server includes multiple serverblades 116 that are installed in a common rack or chassis, with eachserver blade 116 functioning as a separate SGW, each preferably with itsown processor(s), memory, network interfaces and its own IP addresses.In one implementation, SGW 108 is configured to load balance user planesessions across multiple internal SGW blades 116.

The UE 102 typically generates and transmits a request to create asession to the MME 106 over the S1-MME interface 110. In response toreceiving the request, the MME 106 generates and transmits a createsession request to the SGW 108. The MME 106 communicates the createsession request to the SGW 108 over S11 interface 112 that is adapted toaccommodate the request.

SGW 108 receives the create session request and selects one of SGWsamong a plurality of internal SGWs 116. As noted above, each SGW 116 maybe implemented by a separate server blade having its own unique IPaddress. SGW 108 generates a create session response, which includes anIP address for the selected internal SGW. SGW 108 forwards the responseto the MME 106, which transmits the create session response includingthe IP address for the selected SGW blade to the e-NodeB 104 over theS1-MME interface 110. The eNodeB 104 communicates to the UE 102 that theattach procedure is completed. Thereafter, the eNodeB 104 routes packetsbetween the UE 102 and the IP address included in the received createsession response via a corresponding S1a-U interface link 114 a-114 c.

FIG. 2 is a diagram illustrating selective user plane monitoring using asingle monitoring probe when a serving gateway has a single IP address,according to an embodiment of the present invention. In this embodiment,SGW 202 is implemented using a single server having a single IP address.For illustrative purposes only assume that the hardware capacity limitof the SGW 202 (the maximum throughput in bps that this SGW can handle)is 80 Gbps. In this scenario, the S1-U interface 208 carries the userplane traffic between the eNodeB 104 and the SGW 202. In thisembodiment, the user plane IP traffic is carried within encapsulatedunidirectional tunnels (e.g., GTP-U) tunnels for specific user's flows.Each user flow has a unique tunnel identifier. The user plane IP trafficis embedded within transport layer addresses (i.e., source anddestination IP addresses of the network devices). In one embodiment, theuser plane IP traffic is carried within 8 links, each link havingmaximum throughput of 10 Gbps.

In addition to components 102-112 of the access network 100, FIG. 2includes components that facilitate monitoring of traffic in thewireless network 100.

More specifically, in this embodiment, one Network Packet Broker (“NPB”)204 is incorporated into the network 100 to facilitate processing ofdata packets and/or to route data packets to/from network monitoringtools. These monitoring tools may include, for example, network analysistools, forensic tools, various network monitoring tools, firewalls,malware prevention tools, intrusion detection tools, etc. NPB 204represents hardware and/or software modules that perform, among othertasks, aggregation of monitored traffic from multiple links, filteringand grooming of traffic to relieve overburdened monitoring tools,load-balancing traffic across a pool of monitoring tools, andregeneration of traffic to multiple monitoring tools. In one embodiment,NPB 204 uses a plurality of taps (not shown in FIG. 2) to capturetraffic transmitted within the access network 100. The taps areconnections to the various transmission links (e.g., GTP-U tunnels) andare designed to copy packets transmitted through the links and providethe copied packets to the network probe 206 (through the NPB 204) sothat the probe 206 can monitor the performance of the network and thequality of the user experience by analyzing the packets. The taps, suchas passive taps, filterable taps, and others, include, but are notlimited to XFP ports, UTP ports, SFP ports, or other similar means ofconnecting to the S1a-U interface transmission link 208 and capturingthe transmitted packets for analysis.

The NPB 204 shown in FIG. 2 includes a plurality of input ports 214b-214 n configured to receive user plane data packets 210 from theplurality of tunnels that carry the user plane IP traffic. In addition,the NPB 204 includes a separate input port 214 a configured to receivecontrol plane data packets 212 from the S11 interface 112. In thisembodiment each input port 214 a-214 n has maximum throughput of 10Gbps.

According to this embodiment, the NPB 204 aggregates both the receiveduser plane data packets 210 and all of the received control planepackets 212 and forwards the aggregated packets to monitoring tools viatwo output ports 216 a and 216 b. It is noted that each output port 216a-216 b has maximum throughput of 40 Gbps. In other words, the NPB 204sends all received monitoring load including all received user planepackets 210 and all received control plane packets 212 to monitoringtools.

Generally speaking, currently existing packet brokers can perform basicpacket aggregation functions as well as various more advanced packetprocessing functions on the traffic received from taps, such as removingprotocol headers, filtering/classifying packets based on configuredrules, and so on. Packet brokers can then transmit the processed trafficto a number of analytic probes/tools, which can carry out various typesof calculations and analyses on the traffic in accordance with thebusiness goals/purposes of network (e.g., calculation of KPIs, detectionof security threats/attacks in core network, generation of reports,etc.).

Typically, network implementations use dedicated networking hardware(e.g., hardware comprising custom application-specific integratedcircuits (ASICs) and/or field-programmable gate arrays (FPGAs)) in orderto implement packet brokers. For instance, according to one knownapproach, a packet broker can be implemented using a device comprisingat least one line card that includes an ASIC or FPGA-based packetprocessor. When the packet broker device receives replicated trafficfrom taps, the packet broker processes the traffic using the packetprocessors based on rules that are programmed into hardware memorytables (e.g., content-addressable memory (CAM) tables) resident on thepacket processors and/or line cards. The packet broker then forwards theprocessed traffic onward to probes/tools 206 for analysis.

This hardware-based approach for implementing advanced functionality ofa packet broker suffers from several drawbacks. First, the scalabilityof monitoring network—in other words, its ability to process increasingvolumes of traffic from a core network—is necessarily constrained by thehardware capabilities of a packet broker. For example, if a packetbroker is implemented using a chassis-based router that supports up to Xline cards, the packet broker cannot scale to support traffic volumesthat exceed the capabilities of those X line cards.

Second, since hardware-based packet brokers perform packet processingbased on rules that are programmed into hardware memory tables, thesepacket brokers are generally limited to executing packet processingoperations that conform to the semantics of such rules (i.e., attempt tomatch one or more header fields of an incoming packet and then perform aspecified action if a match is made). While these operations can bechained by passing the output of one packet processor/line card toanother, the order of the chaining is fixed in hardware. This rigidprocessing paradigm is problematic if more flexible, complex, anddynamic packet processing operations are desired.

Third, implementing feature changes or additions to a hardware-basedpacket broker can be costly and time-consuming due to the need to designand validate such changes at the hardware level. This, in turn, makes itmore difficult to quickly iterate the packet broker in response toevolving customer needs/requirements and increases the cost of thedevice for those customers.

Advantageously, various embodiments of the present invention address theaforementioned drawbacks by moving advanced packet processing functionsfrom the hardware-based NPB 204 to a plurality of software-basedmonitoring tools. This significantly reduces the overall cost of themonitoring infrastructure, and at the same time provides more flexibleand dynamic packet processing operations customized to serve specificneeds of network operators. Thus, various embodiments described hereincontemplate utilization of NPBs 204 with hardware implementationslimited to basic packet aggregation functions.

In the illustrated embodiment, a monitoring tool is implemented as anetwork probe 206. The network probe 206 may be configured as hardware,software, firmware, or combination thereof, for monitoring datatransmission through the Sla-U interface 208 and the S11 interface 112.While generally the network probe 206 may be deployed at any of avariety of locations or links of the network 100 to collect network datapackets transmitted through the S1a-U interface 208 and the S11interface 112, in this case the network probes 206 are connected to thenetwork through the NPB 204 which, as described in another embodimentbelow, may be configured to permit balancing of the load betweenmultiple network probes. The network probe 206 may be configured as aspecial purpose computing device or a software component (not limited toa single process) dedicated to monitoring data communicated via thenetwork 100. Alternatively, the network probe 206 may be a generalpurpose computing device with specialized software components installedthereon. In one embodiment, the network probe 206 is a nGeniusInfiniStream, available from NetScout Systems, Inc. of Westford, Mass.

In this example, after collecting the packets (user plane and controlplane), the network probe 206 selectively generates an Adaptive ServiceIntelligence (ASI) data set that can include key performance indicatorsand Adaptive Session Records (“ASRs”) as described in U.S. patentapplication Ser. No. 12/756,638 entitled “Real-Time Adaptive Processingof Network Data Packets for Analysis” and filed on Apr. 8, 2010. Themethods and systems described in U.S. patent application Ser. No.12/756,638 enable the network probe 206 to analyze network performanceand end user experience in real-time, without extensive networkbuffering and analysis.

In one embodiment, the network probe 206 includes two Network InterfaceController (NIC) ports 214 a-214 b and has maximum throughput of atleast 80 Gbps. In other words, the maximum throughput of the entire SGW202 is less than or equal to the maximum throughput of the network probe206.

Furthermore, according to an embodiment of the present invention, thenetwork monitoring probe 206 is configured to generate basic KPIs andmeta data metrics for all subscribers and for the entire control anduser plane traffic and configured to selectively generate advanced KPIsand metadata only for selected subscribers on user plane by usinginternal filtering techniques. Basic KPIs and meta data metrics mayinclude Key Traffic Indicators (KTIs), such as, but not limited to,volume, utilization rate, and throughput metrics. The advanced set ofmetrics typically provides additional assistance in troubleshooting andmay include, but is not limited to, the following metrics: networkerrors, network congestion, jitter, latency, transaction response times,timeouts, as well as various quality of service characteristics (e.g.,for video and Voice over IP traffic). Keeping track of these metricstypically requires more processing power, thus selective generation ofsuch metrics facilitates better management of resources on each probe.Exact arrangement of various advanced metrics typically depends on thetype of network traffic flows being analyzed. Keeping track of thesemetrics typically requires more processing power, in contrast to thebasic KPIs and metadata metrics.

According to an embodiment of the present invention, a list ofsubscribers (e.g., a whitelist) that requires additional monitoring(advanced set of KPIs) may be either received by the network probe 206from a different network management system or may be preconfigured atthe network probe 206. Examples of subscriber entity identifiersinclude, but are not limited to, an international mobile equipmentidentifier (IMEI) and an international mobile subscriber identifier(IMSI). It should be noted that in some embodiments, the list mayinclude a criteria by which subscriber entities may be identified, suchas location, handset and application. For example, the provided list mayinclude only application identifiers, in which case the network probe206 is configured to generate the advanced set of metrics for allsubscribers using the specified application (e.g., Facebook). Locationidentifiers may indicate geographic locations associated with one ofeNodeBs 104.

A further advantage of example embodiments is that the monitoring of asubscriber's media experience may be adjusted based on the subscriber'spriority, class, subscription level, and so forth. Therefore, if acertain subset of subscribers is paying for a premium experience, it maybe critically important to ensure that their service is not impacted byvarious traffic conditions as compared to those who are paying for alower experience or are not paying at all.

FIG. 3 is a diagram illustrating selective user plane monitoring usingmultiple monitoring probes when a serving gateway has multiple IPaddresses, according to yet another embodiment of the present invention.In this embodiment, SGW 308 is implemented using a blade server. Inother words, SGW 308 includes multiple server blades 308 a-308 c thatare installed in a common rack or chassis, with each server bladefunctioning as an internal SGW, each with its own IP address and eachperforming a subset of SGW functionality. In this embodiment, the userplane IP traffic transmitted between the SGW 308 and the eNodeBs 104 iscarried within 3 different links, each link having maximum throughput of10 Gbps.

As explained above in conjunction with FIG. 1, the SGW 308, in responseto receiving a create session request message, selects one of the bladesaccording to a predefined criteria and generates a create sessionresponse, which includes an IP address for the selected internal SGW 308a-308 c. The SGW 308 forwards the response to the MME 106, whichtransmits the create session response including the IP address for theselected internal SGW blade to the e-NodeB 104 over the S1-MME interface110. Thereafter, the eNodeB 104 routes packets between a particular UE102 and the IP address included in the corresponding create sessionresponse via a corresponding S1a-U interface link. In other words, alldata plane packets associated with a particular subscriber are routed toa dedicated internal SGW 308 a-308 c.

The NPB 204 shown in FIG. 3 includes input ports 214 b-214 d configuredto receive user plane data packets 302 from the plurality of S1-Uinterface links that carry the user plane IP traffic. In addition, theNPB 204 includes a separate input port 214 a configured to receivecontrol plane packets 212 from the S11 interface 112. In this embodimenteach input port 214 a-214 d also has maximum throughput of 10 Gbps.

According to this embodiment, the NPB 204 aggregates both the receiveduser plane data packets 302 and all control plane packets 212 for SGW308. However, in contrast to embodiment shown in FIG. 2, the NPB 204performs load balancing between various network probes 306 a-306 c. Inone embodiment, the NPB 204 separates the user plane traffic by IPaddresses of the internal SGW blades 308 a-308 c preferably using IPaddress filtering methods. In other words, the NPB 204 may route alldata packets being handled by the first SGW blade 308 a to a firstnetwork probe 306 a via output ports 304 a and 304 b, all data packetsbeing handled by the second internal SGW blade 308 b to a second networkprobe 306 b via output ports 304 c and 304 d and may route all datapackets being handled by the third internal SGW blade 308 c to a thirdnetwork probe 306 c via output ports 304 e and 304 f. It should be notedthat the entire load of the aggregated control plane packets 212 isforwarded to all network probes 306 a-306 c by the packet broker 204 forcorrelation purposes. In other embodiments, other criteria may beutilized for load balancing the user plane traffic. In yet otherembodiments, the NPB 204 may send the entire user plane traffic to eachnetwork probe 306 a-306 c.

According to an embodiment of the present invention, all thecorrelations performed collectively by the plurality of network probes306 a-306 c can be seen as a sequence of control plane/user plane andcontrol plane/control plane correlations where the control plane/userplane correlation can use, for example, subscriber entity attributes andtunnel identifiers for correlation purposes. According to an embodimentof the present invention, whenever possible, the network probes 306a-306 c attempt to correlate the packets based on a tunnelidentifier/subscriber entity identifier mapping that can be extractedfrom the control plane traffic. This correlation is possible only if thesubscriber identifier is present in all packets being correlated.Advantageously, in this embodiment the network probes 306 a-306 creceive only a subset of user plane data, but because they also receiveall control plane packets 212 containing mappings between subscriberidentifiers and tunnel identifiers, there is guaranteed to be a matchfor control plane/user plane correlation purposes.

In this embodiment, the maximum throughput of each individual SGW blade308 a-308 c is less than or equal to the maximum throughput of thecorresponding network probe 306 a-306 c. For example, if each SGW blade308 a-308 c has maximum throughput of 10 Gbps, the network probes 306a-306 c having maximum throughput of 80 Gbps can be used in thisconfiguration. As noted above, each network probe 306 a-306 c processesuser plane traffic for a specific SGW blade 308 a-308 c and each networkprobe 306 a-306 c processes the entire control plane traffic.

In an alternative embodiment, each network probe 306 a-306 c may receivethe entire user plane traffic and may perform internal load balancing byselecting a subset of the received user plane traffic using, forexample, odd/even classification of packets (in case of a two probeconfiguration) or using conventional hashing techniques.

Furthermore, according to an embodiment of the present invention, eachnetwork monitoring probe 306 a-306 c is configured to generate basicKPIs and meta data metrics (e.g., KTIs) for the entire user planetraffic and is preferably configured to perform additional filtering andselectively generate advanced KPIs and metadata only for selectedsubscribers on user plane sessions, either by subscriber or byapplication, as described above. Advantageously, each network probe 306a-306 c discards a portion of the user plane traffic that is notrelevant to the generation of advanced KPIs and may also optionallydiscard a portion of the control plane traffic that is not relevant tothe generation of advanced KPIs, as described below in conjunction withFIG. 4. It should be noted that in various embodiments each networkprobe 306 a-306 c may either have its own unique list of subscribers forselective generation of advanced metrics or may each have the sameglobal list of subscribers. In some cases, subscriber's sessions may behanded over from one e-NodeB 104 to another. As a result, subscriber'suser plane traffic may be rerouted by the SGW 308 to a different blade308 a-308 c. Thus, if the NPB 204 separates the user plane traffic by IPaddresses of the internal SGW blades 308 a-308 c then a subset ofsubscriber's user plane data may be rerouted to a different networkprobe 306 a-306 c as well. In this scenario, a global list ofsubscribers shared by all network probes 306 a-306 c enables completeanalysis of the entire user plane data for that particular subscribereven if that data is spread out between the network probes 306 a-306 c.

It is to be appreciated, scalability is one of the advantages of theembodiment illustrated in FIG. 3. Each wireless network service providermay utilize a different number of SGW blades 308 a-c and a correspondingnumber (e.g., matching number) of network probes 306 a-306 c.

Before turning to description of FIG. 4, it is noted that the flowdiagram shown therein is described, by way of example, with reference tocomponents shown in FIGS. 1-3, although these operational steps may becarried out in any system and are not limited to the scenario shown inthe aforementioned figures. Additionally, the flow diagram in FIG. 4illustrates an example in which operational steps are carried out in aparticular order, as indicated by the lines connecting the blocks, butthe various steps shown in this diagram can be performed in any order,or in any combination or sub-combination. It should be appreciated thatin some embodiments some of the steps described below may be combinedinto a single step. In some embodiments, one or more additional stepsmay be included. Although the operational steps below are described asbeing performed by network probe 306 in FIG. 3, the same sequence ofoperational steps may be carried out by network probe 206 illustrated inFIG. 2.

As shown in FIG. 4, at step 402, the network probe 306 starts the methodby receiving the entire set of control plane packets 212 and receivingat least a subset of user plane packets 302. More, specifically inembodiments illustrated in FIG. 2 the network probes 206 receive theentire load of the user plane traffic, while the network probes 306shown in FIG. 3 may receive either entire user plane traffic or onlyuser plane traffic for a specific SGW blade 308 a-308 c.

Next, at step 404, the network probe 306 obtains a list of identifiersindicating specific subscribers of interest. Examples of subscriberentity identifiers include, but not limited to, IMEI and IMSI. It shouldbe noted that in some embodiments, the list may include a criteria bywhich subscriber entities may be identified, such as location, handsetand application. For example, the provided list may include onlyapplication identifiers, in which case the network probe 306 isconfigured to generate the advanced set of metrics for all subscribersusing the specified application.

In an embodiment, at 406, the network probe 306 generates a full list ofASI metrics for the received control plane packets. The full list of ASImetrics may include some basic KPIs and ASRs for control plane traffic.Since volume of control plane traffic is substantially smaller thanvolume of user plane traffic computational time for generation of ASImetrics for the received control plane packets is negligible as comparedto computational time for generation of ASI metrics for the receiveduser plane packets. In some embodiments, instead of generating the fulllist of ASI metrics for all control plane packets, the network probe 306may be configured to generate a subset of ASI metrics that are relevantto the provided list of identifiers indicating specific subscribers ofinterest.

At 408, the network probe 306 analyzes a plurality of received userplane packets. In one embodiment, the network probe 306 processes theheader of each packet if that packet is part of the network flowassociated with a subscriber of interest. At step 410, the network probe306 determines if the analyzed user plane packet matches at least one ofthe identifiers included in the list of identifiers (e.g., subscriber'sidentifier).

In response to identifying all user plane packets that match at leastone of the identifiers (decision block 410, Yes branch), at step 412,the network probe 306 generates a full list of advanced ASI metrics forall aggregated user plane packets matching at least one of theidentifiers. In response to accumulating a plurality of user planetraffic not matching at least one of the identifiers (decision block410, No branch), at step 414, the network probe 306 generates a list ofbasic KPIs and KTIs, such as, but not limited to, volume, utilizationratio, and throughput metrics.

In various embodiments, the generated metrics may be presented to a uservia a GUI interface or such metrics may be saved to a different systemfor storage (i.e. a repository).

In summary, various embodiments of the present invention are directed toa monitoring system facilitating monitoring of control and user planetraffic in a wireless network. Advantageously, monitoring probes areconfigured to generate metrics for the entire control plane packets andto selectively generate a set of advanced metrics for all subscribers ofinterest. Subscribers of interest are determined based on a predefinedlist or based on a criterion that enables to identify a subset ofsubscribers. Furthermore, various embodiments of the present inventionenable load balancing of user plane traffic in either automated ormanual fashion.

With certain illustrated embodiments described above, it is to beappreciated that various non-limiting embodiments described herein maybe used separately, combined or selectively combined for specificapplications. Further, some of the various features of the abovenon-limiting embodiments may be used without the corresponding use ofother described features. The foregoing description should therefore beconsidered as merely illustrative of the principles, teachings andexemplary embodiments of this invention, and not in limitation thereof.

It is to be understood that the above-described arrangements are onlyillustrative of the application of the principles of the illustratedembodiments. Numerous modifications and alternative arrangements may bedevised by those skilled in the art without departing from the scope ofthe illustrated embodiments, and the appended claims are intended tocover such modifications and arrangements.

What is claimed is:
 1. A system for selective user plane monitoring in awireless network, the system comprising: a service getaway (SGW) havinga plurality of units, each unit having a unique IP address; a networkpacket broker configured to receive a plurality of packets comprisinguser plane data from one or more tunnels created to enable directtransmission of the user plane packets from user equipment to theplurality of SGW units and configured to receive a plurality of packetscomprising control plane data from one or more channels created toenable transmission of the control plane packets from a base transceiverstation to the SGW; and a plurality of monitoring probes operativelycoupled to the network packet broker, the monitoring probes areconfigured to generate a first plurality of metrics associated with thereceived control plane packets and configured to selectively generate asecond plurality of metrics associated with the received user planepackets based on one or more identifiers, wherein the network packetbroker is configured to forward a plurality of user plane packets beingprocessed by a particular SGW unit to a particular monitoring probe ofthe plurality of probes.
 2. The system of claim 1, wherein the SGWcomprises a blade server and wherein each of the plurality of SGW unitscomprises a blade.
 3. The system of claim 1, wherein the one or moretunnels comprise encapsulated unidirectional tunnels and wherein eachtunnel is associated with a particular user flow.
 4. The system of claim1, wherein the network packet broker comprises a plurality of inputports having a collective throughput equal to or greater than collectivethroughput of the plurality of SGW units.
 5. The system of claim 1,wherein the network packet broker is operatively connected with each ofthe plurality of monitoring probes via at least two output ports havinga collective throughput equal to or less than throughput of thecorresponding monitoring probe.
 6. The system of claim 5, wherein eachof the at least two output ports of the plurality of monitoring probeshas maximum throughput of approximately 40 Gbps.
 7. The system of claim1, wherein the one or more identifiers include at least one ofsubscriber identifiers, location identifiers, user equipment identifiersor application identifiers.
 8. The system of claim 7, wherein thesubscriber identifiers comprise at least one of an international mobileequipment identifier (IMEI) and an international mobile subscriberidentifier (IMSI).
 9. The system of claim 1, wherein the receivedcontrol plane packets include mappings between a plurality of subscriberidentifiers and a plurality of tunnel identifiers and wherein theplurality of monitoring probes is further configured to correlate thereceived user plane packets with the received control plane packetsusing the mappings.
 10. The system of claim 1, wherein the networkpacket broker is configured to forward all of the user plane packets toeach monitoring probe of the plurality of probes.
 11. A method forselective user plane monitoring in a wireless network, the methodcomprising steps of: receiving, by a network packet broker, a pluralityof packets comprising user plane data from one or more tunnels createdto enable direct transmission of the user plane packets from userequipment to a service getaway (SGW) comprising a plurality of units,each of the plurality of units having a unique IP address; receiving, bythe network packet broker, a plurality of packets comprising controlplane data from one or more channels created to enable transmission ofthe control plane packets from a base transceiver station to theplurality of units of the SGW; transmitting, by the network packetbroker, the received plurality of user plane packets and the receivedplurality of control plane packets to a plurality of monitoring probesoperatively coupled to the network packet broker, wherein each subset ofuser plane packets representing packets being processed by a particularSGW unit is transmitted to a particular monitoring probe of theplurality of probes; generating, by the plurality of monitoring probes,a first plurality of metrics associated with the received control planepackets; and selectively generating, by the plurality of monitoringprobes, a second plurality of metrics associated with the received userplane packets based on one or more identifiers.
 12. The method of claim11, wherein the SGW comprises a blade server and wherein each of theplurality of SGW units comprises a blade.
 13. The method of claim 11,wherein the one or more tunnels comprise encapsulated unidirectionaltunnels and wherein each tunnel is associated with a particular userflow.
 14. The method of claim 11, wherein the network packet brokercomprises a plurality of input ports having a collective throughputequal to or greater than collective throughput of the plurality of SGWunits.
 15. The method of claim 11, wherein the network packet broker isoperatively connected with each of the plurality of monitoring probesvia at least two output ports having a collective throughput equal to orless than throughput of the corresponding monitoring probe.
 16. Themethod of claim 15, wherein each of the at least two output ports of theplurality of monitoring probes has maximum throughput of approximately40 Gbps.
 17. The method of claim 11, wherein the one or more identifiersinclude at least one of subscriber identifiers, location identifiers,user equipment identifiers or application identifiers.
 18. The method ofclaim 17, wherein the subscriber identifiers comprise at least one of aninternational mobile equipment identifier (IMEI) and an internationalmobile subscriber identifier (IMSI).
 19. The method of claim 11, furthercomprising the step of correlating, by the plurality of monitoringprobes, the received user plane packets with the received control planepackets using mappings between a plurality of subscriber identifiers anda plurality of tunnel identifiers, wherein the correlating step isperformed prior to the steps of generating the first plurality ofmetrics and selectively generating the second plurality of metrics andwherein the received control plane packets include the mappings.
 20. Themethod of claim 11, wherein the step of transmitting further comprisestransmitting, by the network packet broker, all of the user planepackets to each monitoring probe of the plurality of probes.